package func.study.concurrency.c16;

/**
 * 测试 没有充分同步的程序 可以产生重排序
 * 可能结果为（0， 1） （1， 0），（1,1） （0,0）
 * Created by chenyao on 2017/7/13.
 */
public class PossibleReordering {

    static int x = 0, y = 0;
    static int a = 0, b = 0;

    public static void main(String[] args) throws InterruptedException {
        Thread one = new Thread(() -> {
            a = 1;
            x = b;
        });

        Thread other = new Thread(() -> {
            b = 1;
            y = a;
        });

        one.start();
        other.start();
        one.join();
        other.join();
        System.out.println("(" + x + ", " + y + ")");

    }



}
